
// Variables globales

var xmlCli; 
var selectedCliente;

/* Funciones correspondientes a la gestión de Clientes */

//Cambiado
function goBuscarCli() {
	$.mobile.changePage('#buscar_clientes', {
		transition : "slide"
	});
}

//Cambiado
function goCrearCli() {
	$.mobile.changePage('#crear_cliente', {
		transition : "slide"
	});
}

//Cambiado
function goModificarCli() {
	document.getElementById("m_idCliente").value = $('#h_idClienteM').val();
	document.getElementById("m_nombre").value = $('#h_nombreM').val();
	document.getElementById("m_contacto").value = $('#h_contactoM').val();
	document.getElementById("m_email").value = $('#h_emailM').val();
	document.getElementById("m_telefono").value = $('#h_telefonoM').val();
	document.getElementById("m_idDireccion").value = $('#h_idDireccionM').val();
	document.getElementById("m_domicilio").value = $('#h_domicilioM').val();
	document.getElementById("m_poblacion").value = $('#h_poblacionM').val();
	document.getElementById("m_provincia").value = $('#h_provinciaM').val();
	document.getElementById("m_codigoPostal").value = $('#h_codigoPostalM').val();
	$.mobile.changePage('#modificar_cliente', {
		transition : "slide"
	});
}

//Cambiado
function mostrarAnadirCliente() {
	$('#anadir_cliente').popup('open').trigger('create');	
}


/*-----------------------------------Metodos necesarios para BUSCAR----------------------------*/

// Buscar clientes
function buscar_cliente(destino, transicion) {
	var serviceURL = 'http://10.0.2.2:8080/Phama/pharmaws';
	$.mobile.showPageLoadingMsg(); 
	$.soap({
	    url: serviceURL,
	    appendMethodToURL: false, 
	    method: 'buscarCliente',
	    namespaceQualifier: 'ns2',
	    namespaceUrl: 'http://ws.phama.it.eps.upo.org/',
	    params: {
	        nombre:  $('#b_nombre').val(),
	        contacto: $('#b_contacto').val(),
	        email: $('#b_email').val(),
	        telefono: $('#b_telefono').val()
	    },

	    success: function (soapResponse) {
	    	var xmlDoc = $.parseXML(soapResponse);
	        xmlCli = $(xmlDoc);
	        $.mobile.hidePageLoadingMsg();
	        
	        var clientes = xmlCli.find("return");
	        if(clientes.length>0){
	        	var lista = "<ul data-role='listview' data-inset='true'>";
	        	$("#resultadoClientes").children().remove();
	        	$('#resultado_buscar_cliente').addClass('ui-page');
	    	    var cli = '';
	    	    clientes.each(function(index,element){
	    	    	 idCliente = $(element).find('idCliente').first().text();
	    	    	 cli = "<li><a href='#' onclick=\"accionCliente("+idCliente+")\">" +
	    	    	 		"N&uacute;m. " + $(element).find('idCliente').first().text() +
	    	    	 		' : ' +
	    	    	 		$(element).find('nombre').last().text() + 
	    	    	 		"</a></li>";
	    	    	 lista += cli;
	    	    });
	    	    lista += "</ul>";
	    	    $('#resultadoClientes').empty().append(lista).listview().trigger('create');
	    	    $.mobile.changePage(destino, {transition : transicion}); 
	        } else {
	        	$('#dlg_aviso_buscar_cliente h1').html('Aviso');
	        	$('#dlg_aviso_buscar_cliente p').html('No se han encontrado resultados.');
	        	$('#dlg_aviso_buscar_cliente').popup('open');
	        }
	    },
	    error: function (SOAPResponse) {
	    	$.mobile.hidePageLoadingMsg();
	    	$('#dlg_aviso_buscar_cliente h1').html('Error');
        	$('#dlg_aviso_buscar_cliente p').html(SOAPResponse);
        	$('#dlg_aviso_buscar_cliente').popup('open');
	    }
	});
}

//Cambiado
function accionCliente(idCliente){
	selectedCliente = idCliente; // Se establece al variable global selectedCliente  con el número del cliente seleccionado por el usuario
	var accion = $('#bnAccionCliente').val();
	if(accion=="editar"){
		mostrarCliente("#ver_clienteModificar", "none");
	} else {
		$('#identificadorCliente').html(selectedCliente);
		$('#confirmar_borrar_cliente').popup('open');
	}
}

//Cambiado
// Mostrar el cliente seleccionado
function mostrarCliente(destino, transicion){
	var clientes = xmlCli.find("return");
	refrescarClientes();
	$.mobile.changePage(destino, {transition : transicion});
}

function refrescarClientes(){
	var clientes = xmlCli.find("return");
	
	clientes.each(function(index,element){
		var idClienteAux = $(element).find('idCliente').first().text();	
		if(selectedCliente==idClienteAux){	
			$('#ver_clienteModificar').addClass('ui-page');
			
			document.getElementById("h_idClienteM").value = $(element).find('idCliente').first().text();
			document.getElementById("h_idDireccionM").value = $(element).find('direccion').find('idDireccion').first().text();
			
			var a = $(element).find('nombre').first().text();
			var b = $(element).find('contacto').first().text();
			var c = $(element).find('email').first().text();
			var d = $(element).find('telefono').first().text();
			var e = $(element).find('domicilio').first().text();
			var f = $(element).find('poblacion').first().text();
			var g = $(element).find('provincia').first().text();
			var h = $(element).find('cp').first().text();
			
			$('#v_nombreM').html(a);
			$('#v_contactoM').html(b);
			$('#v_emailM').html(c);
			$('#v_telefonoM').html(d);
			$('#v_domicilioM').html(e);
			$('#v_poblacionM').html(f);
			$('#v_provinciaM').html(g);
			$('#v_codigoPostalM').html(h);
			
			document.getElementById("h_nombreM").value = a;
			document.getElementById("h_contactoM").value = b;
			document.getElementById("h_emailM").value = c;
			document.getElementById("h_telefonoM").value = d;
			document.getElementById("h_domicilioM").value = e;
			document.getElementById("h_poblacionM").value = f;
			document.getElementById("h_provinciaM").value = g;
			document.getElementById("h_codigoPostalM").value = h;
		}
	});	
}

/*-----------------------------------Metodos necesarios para MODIFICAR----------------------------*/

//Cambiado
// Validar cliente
function validarClienteModificado(){
	var a_idCliente = $('#m_idCliente').val();
	var a_nombre = $('#m_nombre').val();
	var a_contacto = $('#m_contacto').val();
	var a_email = $('#m_email').val();
	var a_telefono = $('#m_telefono').val();
	var a_idDireccion = $('#m_idDireccion').val();
	var a_direccion = $('#m_domicilio').val();
	var a_poblacion = $('#m_poblacion').val();
	var a_provincia = $('#m_provincia').val();
	var a_cp = $('#m_codigoPostal').val();
	
	if(a_idCliente == '' ||
		a_nombre == '' ||
	   	a_contacto == '' || 
	   	a_email == '' || 
	   	a_telefono == '' || 
	   	a_idDireccion == '' ||
	   	a_direccion == '' || 
	   	a_poblacion == '' || 
	   	a_provincia == '' || 
	   	a_cp == ''){
		$('#dlg_aviso_crear_cliente').popup('open').trigger('create');
	} else {
		modificarCliente();
	}
}

//Cambiado
//Modificar cliente
function modificarCliente(){
	var a_idCliente = $('#m_idCliente').val();
	var a_nombre = $('#m_nombre').val();
	var a_contacto = $('#m_contacto').val();
	var a_email = $('#m_email').val();
	var a_telefono = $('#m_telefono').val();
	var a_idDireccion = $('#m_idDireccion').val();
	var a_direccion = $('#m_domicilio').val();
	var a_poblacion = $('#m_poblacion').val();
	var a_provincia = $('#m_provincia').val();
	var a_cp = $('#m_codigoPostal').val();
	var serviceURL = 'http://10.0.2.2:8080/Phama/pharmaws';
	$.mobile.showPageLoadingMsg(); 

	$.soap({
	    url: serviceURL,
	    appendMethodToURL: false, 
	    method: 'modificarCliente',
	    namespaceQualifier: 'ns2',
	    namespaceUrl: 'http://ws.phama.it.eps.upo.org/',
	    params: {
	    	idCliente: a_idCliente,
	        nombre: a_nombre,
			contacto: a_contacto,
			email: a_email,
			telefono: a_telefono,
			idDireccion: a_idDireccion,
			direccion: a_direccion,
			poblacion: a_poblacion,
			provincia: a_provincia,
			cp: a_cp
	    },
	    success: function (soapResponse) {
	    	$('#ver_cliente').addClass('ui-page');
			
			$('#v_no').html(a_nombre);
			$('#v_co').html(a_contacto);
			$('#v_em').html(a_email);
			$('#v_te').html(a_telefono);
			$('#v_do').html(a_direccion);
			$('#v_po').html(a_poblacion);
			$('#v_pr').html(a_provincia);
			$('#v_cp').html(a_cp);
	    	$.mobile.changePage("#ver_cliente", "none");
	    },
	    error: function (SOAPResponse) {
	    	$.mobile.hidePageLoadingMsg();
	    	alert(SOAPResponse);
	    }
	});
}

/*-----------------------------------Metodos necesarios para BORRAR----------------------------*/

//Cambiado
// Borrar el cliente seleccionado
function borrarCliente(destino, transicion){
	var serviceURL = 'http://10.0.2.2:8080/Phama/pharmaws';
	$.mobile.showPageLoadingMsg(); 
	$.soap({
	    url: serviceURL,
	    appendMethodToURL: false, 
	    method: 'eliminarCliente',
	    namespaceQualifier: 'ns2',
	    namespaceUrl: 'http://ws.phama.it.eps.upo.org/',
	    params: {
	        idCliente:  selectedCliente
	    },
	    success: function (soapResponse) {
	    	var xmlDoc = $.parseXML(soapResponse);
	        $.mobile.hidePageLoadingMsg();
	        buscar_cliente(destino,transicion);
	    },
	    error: function (SOAPResponse) {
	    	$.mobile.hidePageLoadingMsg();
	    	alert(SOAPResponse);
	    }
	});
}


/*-----------------------------------Metodos necesarios para GUARDAR----------------------------*/

//Cambiado
// Validar cliente
function validarCliente(){
	var a_nombre = $('#c_nombre').val();
	var a_contacto = $('#c_contacto').val();
	var a_email = $('#c_email').val();
	var a_telefono = $('#c_telefono').val();
	var a_direccion = $('#c_direccion').val();
	var a_poblacion = $('#c_poblacion').val();
	var a_provincia = $('#c_provincia').val();
	var a_cp = $('#c_cp').val();
	
	if(a_nombre == '' ||
	   	a_contacto == '' || 
	   	a_email == '' || 
	   	a_telefono == '' || 
	   	a_direccion == '' || 
	   	a_poblacion == '' || 
	   	a_provincia == '' || 
	   	a_cp == ''){
		$('#dlg_aviso_crear_cliente').popup('open').trigger('create');
	} else {
		grabarCliente();
	}
}

//Cambiado
//Crear nuevo cliente
function grabarCliente(){
	var a_nombre = $('#c_nombre').val();
	var a_contacto = $('#c_contacto').val();
	var a_email = $('#c_email').val();
	var a_telefono = $('#c_telefono').val();
	var a_direccion = $('#c_direccion').val();
	var a_poblacion = $('#c_poblacion').val();
	var a_provincia = $('#c_provincia').val();
	var a_cp = $('#c_cp').val();
	var serviceURL = 'http://10.0.2.2:8080/Phama/pharmaws';
	$.mobile.showPageLoadingMsg(); 

	$.soap({
	    url: serviceURL,
	    appendMethodToURL: false, 
	    method: 'aniadirCliente',
	    namespaceQualifier: 'ns2',
	    namespaceUrl: 'http://ws.phama.it.eps.upo.org/',
	    params: {
	        nombre: a_nombre,
			contacto: a_contacto,
			email: a_email,
			telefono: a_telefono,
			direccion: a_direccion,
			poblacion: a_poblacion,
			provincia: a_provincia,
			cp: a_cp
	    },
	    success: function (soapResponse) {
	    	$('#ver_cliente').addClass('ui-page');
			
			$('#v_no').html(a_nombre);
			$('#v_co').html(a_contacto);
			$('#v_em').html(a_email);
			$('#v_te').html(a_telefono);
			$('#v_do').html(a_direccion);
			$('#v_po').html(a_poblacion);
			$('#v_pr').html(a_provincia);
			$('#v_cp').html(a_cp);
	    	$.mobile.changePage("#ver_cliente", "none");
	    },
	    error: function (SOAPResponse) {
	    	$.mobile.hidePageLoadingMsg();
	    	alert(SOAPResponse);
	    }
	});
}